package com.dodo.blog.config;

import com.comvai.auth.config.AuthServletModule;
import com.comvai.bulkloader.BulkLoaderModule;
import com.comvai.bulkloader.BulkLoaderServletModule;
import com.comvai.services.gae.CommonServicesGaeModule;
import com.comvai.services.gae.CommonServicesGaeServletModule;
import com.comvai.services.gae.GaeGuiceServletContextListener;
import com.dodo.blog.server.impl.BlogModule;
import com.google.inject.Guice;
import com.google.inject.Injector;

/**
 * @author <a href="mailto:medvegy@comvai.com">Aurel Medvegy</a>
 */
public class GuiceServletConfig
        extends GaeGuiceServletContextListener
{
    @Override
    protected Injector getTestInjector()
    {
        return Guice.createInjector(
                new BulkLoaderModule(),
                new BulkLoaderServletModule(),
                new BlogModule(),
                new BlogServletModule(),
                new CommonServicesGaeModule(),
                new CommonServicesGaeServletModule(),
                new AuthServletModule() );
    }

    @Override
    protected Injector getProductionInjector()
    {
        return Guice.createInjector(
                new BulkLoaderModule(),
                new BulkLoaderServletModule(),
                new BlogModule(),
                new BlogServletModule(),
                new CommonServicesGaeModule(),
                new CommonServicesGaeServletModule(),
                new AuthServletModule() );
    }
}